Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Dec 9, 2024

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.1)

Can you help keep this open source service alive? 💖 Please sponsor : )

cmb69 and others added 23 commits December 9, 2024 11:45
The `jit_prof_threshold` is a float, supposed to be in range [0, 1],
and usually very small (the default is 0.005).  Reporting it as int
is meaningless.

Closes GH-17077.
* PHP-8.3:
  opcache_get_configuration() properly reports jit_prof_threshold
* PHP-8.4:
  opcache_get_configuration() properly reports jit_prof_threshold
It seems reasonable to have an ASan job on Windows, especially to be
able to check Windows specific code.  Since the tests may take about
70 minutes, it doesn't make sense to add these for pushes, but for a
nightly job that should be okay.

Closes GH-17087.
phpize builds on Windows ignore the paths of extension sources, and
build all object files in the same folder.  This can't work if there
are multiple source files with the same base name stored in separate
folders and registered as such (e.g. cls/worker.c and src/worker.c).
While extension authors can work around by avoiding duplicate base
names, they may not even be aware of the problem because on POSIX
systems, the object files are usually placed right besides the sources.

Thus we take the relative path (from `configure_module_dirname`) of the
source files into account even for phpize builds.  Since this may break
some extension builds (especially those which use Makefile fragments),
we do not apply this fix to stable branches.

Closes GH-17016.
boundaries should be INT_MIN <= val < INT_MAX in fact.

close GH-16891
Based on the discussion in GH-16286, drop the intl build from macOS + PHP 8.1,
since we cannot build with supported intl versions without too many changes.

Closes GH-17092
See GH-16286
* PHP-8.1:
  Drop intl on macOS + PHP 8.1 build
* PHP-8.2:
  Drop intl on macOS + PHP 8.1 build
* PHP-8.3:
  Drop intl on macOS + PHP 8.1 build
* PHP-8.4:
  Drop intl on macOS + PHP 8.1 build
…t() (#16858)

This will finally make the COMMUNTIY build of the PHP 8.1 build green.

See #16858 (comment)
Closes GH-17091
* PHP-8.1:
  Backport JIT fix: set valid EX(opline) before calling gc_possible_root() (#16858)
* PHP-8.2:
  Backport JIT fix: set valid EX(opline) before calling gc_possible_root() (#16858)
* PHP-8.3:
  Backport JIT fix: set valid EX(opline) before calling gc_possible_root() (#16858)
* PHP-8.4:
  Backport JIT fix: set valid EX(opline) before calling gc_possible_root() (#16858)
… table

Ouch, Z_TRY_ADDREF_P() uses pz twice... Also make sure we actually reserve
enough Buckets for all dynamic properties.

Fixes OSS-Fuzz #382922236
Closes GH-17085
* PHP-8.4:
  Fix duplicate dynamic properties in hooked object iterator properties table
* PHP-8.4:
  Fix unstable get_iterator pointer for hooked classes in shm on Windows
The compiler compiles $value == true to ZEND_BOOL, which always returns true for
objects (with the default cast_object handler). However, when compared to a
statically unknown rhs $value == $true, the resulting opcode ZEND_IS_EQUAL would
call the objects compare handler.

The zend_objects_not_comparable() handler, which is installed for enums and
other internal classes, blanketly returns false. This does not match the
ZEND_BOOL semantics.

Object to boolean comparison is now handled directly in zend_compare(),
analogous to object to null comparison. It continuous to call the cast_object
handler, but guarantees consistent behavior across ZEND_BOOL and ZEND_IS_EQUAL.

Fixes GH-16954
Closes GH-17031
@pull pull bot added the ⤵️ pull label Dec 9, 2024
@pull pull bot merged commit 5a482a1 into wudi:master Dec 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants